package com.tju.ocean_ecology_website.service;

import com.tju.ocean_ecology_website.dto.LoginRequest;
import com.tju.ocean_ecology_website.dto.LoginResponse;
import com.tju.ocean_ecology_website.dto.RegisterRequest;
import com.tju.ocean_ecology_website.dto.RegisterResponse;
import com.tju.ocean_ecology_website.entity.User;

/**
 * 认证服务接口
 */
public interface AuthService {

    /**
     * 用户登录
     * @param loginRequest 登录请求
     * @return 登录响应
     */
    LoginResponse login(LoginRequest loginRequest);

    /**
     * 用户注册
     * @param registerRequest 注册请求
     * @return 注册的用户
     */
    User register(RegisterRequest registerRequest);

    /**
     * 用户注册并返回注册响应
     * @param registerRequest 注册请求
     * @return 注册响应
     */
    RegisterResponse registerAndGetResponse(RegisterRequest registerRequest);
}
